﻿using System.Threading.Tasks;
using SDCloudSolution.SDCloud.ModelRunAgent.Infrastructure.Interfaces;
using SDCloudSolution.SDCloud.Entities.Models.Data;

namespace SDCloudSolution.SDCloud.ModelRunAgent.Infrastructure
{
    public abstract class BaseModelExecutor
    {        
        protected IModelExecutionContextProvider CurrentContext { get; private set; }

        protected BaseModelExecutor(IModelExecutionContextProvider contextProvider)
        {
            CurrentContext = contextProvider;
        }

        public abstract Task<ModelResultDataEntity> ExecuteModel(string modelFullFilePath);
    }
}
